import re

def passWord(password,lenMax,lenMin):
    '''

    :param password: 密码正文
    :param lenMax: 校验最大长度
    :param lenMin: 校验最小长度
    :return: 1：密码校验通过
             2：密码长度过低
             3：密码长度过长
             4：输入的密码为数字字母加字符的任意组合
    '''
    if len(password) < lenMin:
        return 2
    if len(password) > lenMax:
        return 3

    password_rule = re.compile(r"^(?![a-zA-z]+$)(?!\d+$)(?![!@#$%^&*.]+$)[a-zA-Z\d!@#$%^&*.]+$")
    res_list = re.findall(password_rule, password)
    if not res_list:
        return 4

    return 1

#验证手机号是否正确的
class verifyPhone:
    # @staticmethod 去百度搜
    @staticmethod
    def match(phone):
        '''
        功能：判断手机号是否存在某个库里面
        中国电信号段
        133、149、153、173、177、180、181、189、191、199
        中国联通号段
        130、131、132、145、155、156、166、171、175、176、185、186
        中国移动号段
        134、135、136、137、138、139、147、150、151、152、157、158、159、172、178、182、183、184、187、188、198
        '''
        '''
        再次整理
        13：130 131 132 133 134 135 136 137 138 139[0-9]
        14：145 147 149[579]
        15：150 151 152 153 155 156 157 158 159[01256789]
        16：166
        17：171 172 173 175 176 177 178 [1235678]
        18：18[0-9]
        19: 191 198 199 [189]
        '''
        phone_rule = re.compile('^13[0-9]\d{8}$|^14[579]\d{8}$|^15[012356789]\d{8}$|^166\d{8}$|^17[1235678]\d{8}$|^18[0-9]\d{8}$|^19[189]\d{8}$')
        res_list = re.findall(phone_rule, phone)
        if res_list:
            return True
        else:
            return False

